package com.hee.erp.modules.controller;


import com.hee.erp.common.R;
import com.hee.erp.modules.entity.SysCompany;
import com.hee.erp.modules.service.ISysCompanyService;
import com.hee.erp.vo.ZTreeNode;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

/**
 * <p>
 * 前端控制器
 * </p>
 *
 * @author weizehong
 * @since 2022-04-15
 */
@RestController
@Api(tags = "SysCompanyController")
@RequestMapping("/modules/sysCompany")
public class SysCompanyController {

    @Autowired
    ISysCompanyService companyService;

    @GetMapping("/getAllList")
    @ApiOperation("getAllList")
    public R getAllList() {
        List<SysCompany> list = companyService.list();
        return R.success(list);
    }

    @GetMapping("/getTreeNodes")
    @ApiOperation("getTreeNodes")
    public R getTreeNodes() {
        List<ZTreeNode> zTreeNodes = companyService.getTreeNodes();
        return R.success(zTreeNodes);
    }

    @PostMapping("/save")
    @ApiOperation("save")
    public R<String> save(@RequestBody SysCompany company) {
        if (StringUtils.isBlank(company.getId())) {
            companyService.save(company);
        } else {
            companyService.updateById(company);
        }
        return R.success(company.getId());
    }

    @GetMapping("/delById")
    @ApiOperation("delById")
    public R<Boolean> delById(String id) {
        companyService.removeById(id);
        return R.success(true);
    }


}

